<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1.数组方法里面的push pop unshift shift的作用分别是什么，他们的返回值又是什么？
        // push 作用：向数组的末尾添加数据 返回值：添加元素后数组的长度
        // pop 作用：删除数组的最后一个数据 返回值：被删除的数据
        // unshift 作用：在数组的最前面插入一条数据 返回值：添加数据以后数组的长度
        // shift 作用：删除数组最前面的一个数据 返回值：被删除的数据
        // 2.移除数组 arr["西瓜","香蕉","菠萝"]中除西瓜外的所有元素，不要使用第二个数组
            // var arr1=["西瓜","香蕉","菠萝"];
            // arr1=arr1.shift();
     
        // 3.移除数组 arr[1, 2, 3, 4, 2] 中的 2。不要直接修改数组 arr，结果返回新的数组
        // var arr2=[1, 2, 3, 4, 2],arr2_1=[]

        // for(let i=0;i<arr2.length;i++){
        //         if(arr2[i]!=2){
        //             arr2_1.push(arr2[i])
        //         }
        //     }
        //     console.log( arr2_1);
        // 4.定义一个函数,能在数组 arr[1, 2, 3, 4, 2] 的 "2"后面添加元素 "jack"。不要直接修改数组 arr，结果返回新的数组即调用函数后返回的结果为[1, 2,'jack',3, 4, 2,'jack']
    //     var arr3=[1, 2, 3, 4, 2];

    //     function aaa(arr3,num,str){
    //     var arr3_1=[]
        
    //     for(let i=0,a=1;i<arr3.length;i++,a++){
    //         arr3_1.push(arr3[i]);
    //         if(arr3[i] == num){
    //             arr3_1.splice(i+a++,0,str);
    //         }
    //     }
    //     return arr3_1
    // }
    
    //     console.log(aaa(arr3,2,'jack'));
        // while(a!=-1){
        //     console.log(a);
        //     console.log(arr3_1.splice());
        //     b=a;
        //     a=arr3.indexOf(2,a+1);
        // }    
        
        // console.log(arr3_1);
        // 统计数组 var arr = ["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c"]; 中 每个字母出现的次数，以对象的形式返回。
        // {
        //     a:xx,
        //     b:xx,
        // }
        var arr4 = ["a", "b", "c", "a", "b", "c", "a", "b", "c", "a", "b", "c"];
        // var arr4_1=[];
        var obj={};
        // var arr4_3=[]; 
        for(let i=0,a=0;i<arr4.length;i++){
            if(isNaN(obj[arr4[i]])){
                obj[arr4[i]] = 1
            }else{
                obj[arr4[i]] += 1
            }
            // isNaN(obj[arr4[i]])?obj[arr4[i]] = 1:obj[arr4[i]] += 1
            // obj[arr4[i]] = obj[arr4[i]] + 1 || 1;
        }
        console.log(obj);
      
      
    </script>
</body>
</html>